/******************************************************************************
 *  _____     _____
 *  \  __\    \  __\
 *   \ \_\\    \ \_\\
 *    \  __\SS  \  __\roject
 *     \_\       \_\
 *
 * Mateusz Maciąg, Rafał Urbański
 * Komputerowe Systemy Sterowania
 *****************************************************************************/

#ifndef GAINCONTROLLERDESIGNER_H
#define GAINCONTROLLERDESIGNER_H

#include "SimInterface/IConfigurable.h"
#include "ControllerDesigner.h"

#include <QFrame>

namespace Ui {
class GainControllerDesigner;
}

/**
    Konfigurator dla regulatora P.
*/
class GainControllerDesigner : public ControllerDesigner
{
    Q_OBJECT
    
public:
    explicit GainControllerDesigner(QWidget *parent = 0);
    ~GainControllerDesigner();
    
    /**
        Dołącza regulator do konfiguracji.
    */
    void attachController(RafMat::SimInterface::IConfigurableSPtr ctrl);

    /**
        Zapisuje zmiany w konfiguracji.
    */
    void applySettings();

private: 
    Ui::GainControllerDesigner *ui;

    RafMat::SimInterface::IConfigurableSPtr m_controllerConf;
};

#endif // GAINCONTROLLERDESIGNER_H
